{{#accordion-list showExpandAll=false as | al expandFn |}}
  <div class="over-hr">
    <span>
      {{driverOptionsTitle}}
    </span>
  </div>

  {{#accordion-list-item
    title=(t "nodeDriver.oci.access.title")
    detail=(t "nodeDriver.oci.access.detail")
    expandAll=expandAll
    expand=(action expandFn)
    expandOnInit=true
  }}
    {{form-auth-cloud-credential
      driverName=driverName
      parseAndCollectErrors=(action "errorHandler")
      primaryResource=primaryResource
      cloudCredentials=cloudCredentials
      finishAndSelectCloudCredential=(action "finishAndSelectCloudCredential")
      progressStep=(action "finishAndSelectCloudCredential")
      cancel=(action "cancel")
      hideSave=true
    }}

  {{/accordion-list-item}}

  {{#accordion-list-item
    title=(t "nodeDriver.oci.placement.title")
    detail=(t "nodeDriver.oci.placement.detail")
    expandAll=expandAll
    expand=(action expandFn)
    expandOnInit=true
  }}
    <div class="row">

      <div class="col span-6">
        <label class="acc-label">{{t "nodeDriver.oci.region.label"}}{{field-required}}</label>
        <select class="form-control" onchange={{action (mut config.region) value="target.value"}}>
          <option value="" selected={{eq config.region choice}}>Select a region</option>
          {{#each regionChoices as |choice|}}
            <option value={{choice}} selected={{eq config.region choice}}>{{choice}}</option>
          {{/each}}
        </select>
      </div>

      <div class="col span-6">
        <label class="acc-label">{{t 'nodeDriver.oci.availabilityDomain.label'}}{{field-required}}</label>
        {{#input-or-display value=selectedAd}}
          {{searchable-select class="form-control"
                              content=adChoices
                              value=config.nodeAvailabilityDomain
                              placeholder=(t "nodeDriver.oci.availabilityDomain.placeholder")
          }}
        {{/input-or-display}}
      </div>

    </div>


  {{/accordion-list-item}}

  {{#accordion-list-item
    title=(t "nodeDriver.oci.instance.title")
    detail=(t "nodeDriver.oci.instance.detail")
    expandAll=expandAll
    expand=(action expandFn)
    expandOnInit=true
  }}
    <div class="row">

      <div class="col span-6">
        <label class="acc-label">
          {{t "nodeDriver.oci.nodeCompartment.label"}}
          {{field-required}}
        </label>
        {{input
          type="text"
          value=config.nodeCompartmentId
          classNames="form-control"
          placeholder=(t "nodeDriver.oci.nodeCompartment.placeholder")
        }}
      </div>

      <div class="col span-6">
        <label class="acc-label">{{t 'nodeDriver.oci.image.label'}}{{field-required}}</label>
        {{#input-or-display value=selectedImage}}
          {{searchable-select class="form-control"
                              content=imageChoices
                              value=config.nodeImage
                              placeholder=(t "nodeDriver.oci.image.placeholder")
          }}
        {{/input-or-display}}
      </div>
      <div class="col span-6">
        <label class="acc-label">{{t 'nodeDriver.oci.shape.label'}}{{field-required}}</label>
        {{#input-or-display value=selectedNodeShape}}
          {{searchable-select class="form-control"
                              content=nodeShapeChoices
                              value=config.nodeShape
                              placeholder=(t "nodeDriver.oci.shape.placeholder")
          }}
        {{/input-or-display}}
      </div>
    </div>


  {{/accordion-list-item}}

  {{#accordion-list-item
    title=(t "nodeDriver.oci.network.title")
    detail=(t "nodeDriver.oci.network.detail")
    expandAll=expandAll
    expand=(action expandFn)
    expandOnInit=true
  }}


    <div class="row">
      <div class="col span-6">
        <label class="acc-label">
          {{t "nodeDriver.oci.vcn.label"}}
          {{field-required}}
        </label>
        {{input
          type="text"
          value=config.vcnId
          classNames="form-control"
          placeholder=(t "nodeDriver.oci.vcn.placeholder")
        }}
      </div>
      <div class="col span-6">
        <label class="acc-label">
          {{t "nodeDriver.oci.vcnCompartment.label"}}
        </label>
        {{input
          type="text"
          value=config.vcnCompartmentId
          classNames="form-control"
          placeholder=(t "nodeDriver.oci.vcnCompartment.placeholder")
        }}
      </div>
    </div>

    <div class="row">
      <div class="col span-6">
        <label class="acc-label">
          {{t "nodeDriver.oci.subnet.label"}}
          {{field-required}}
        </label>
        {{input
          type="text"
          value=config.subnetId
          classNames="form-control"
          placeholder=(t "nodeDriver.oci.subnet.placeholder")
        }}
        <p class="help-block">
          {{t 'nodeDriver.oci.subnet.helpText'}}
        </p>
      </div>

      <div class="col span-6">
        <label class="acc-label">
          Use private IP address to connect to compute instances(s)
        </label>
        <div>
          {{input
            type="checkbox"
            checked=config.nodeUsePrivateIp
          }}
        </div>
      </div>

    </div>

  {{/accordion-list-item}}


  <div class="over-hr">
    <span>
      {{templateOptionsTitle}}
    </span>
  </div>

  {{form-name-description
    model=model
    nameRequired=true
    rowClass="row mb-10"
  }}

  {{form-user-labels
    initialLabels=labelResource.labels
    setLabels=(action "setLabels")
    expand=(action expandFn)
  }}

  {{form-node-taints
    model=model
    expand=(action expandFn)
  }}

  {{form-engine-opts
    machine=model
    showEngineUrl=showEngineUrl
  }}

  {{top-errors
    errors=errors
  }}

  {{save-cancel
    save=(action "save")
    cancel=(action "cancel")
    editing=editing
  }}
{{/accordion-list}}
